package com.microservice.salmon.db.entities;

import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

@Table(name = "sys_user")
@Data
@EqualsAndHashCode(of = "id")
public class SysUser implements Serializable {

    private static final long serialVersionUID = -7739103891793468533L;

    /**
     * 编号
     */
    @Id
    private Integer id;

    /**
     * 登录名
     */
    @Column(name = "login_name")
    private String loginName;

    /**
     * 密码
     */
    private String password;

    /**
     * 姓名
     */
    private String name;

    /**
     * 用户状态	0:停用 1:启用
     */
    @Column(name = "user_status")
    private Byte userStatus;

    /**
     * 删除标志 1:有效 -1:删除
     */
    @Column(name = "data_flag")
    private Byte dataFlag;

    /**
     * 归属公司
     */
    @Column(name = "company_id")
    private String companyId;

    /**
     * 归属部门
     */
    @Column(name = "office_id")
    private Integer officeId;

    /**
     * 工号
     */
    private String no;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 电话
     */
    private String phone;

    /**
     * 手机
     */
    private String mobile;

    /**
     * 用户类型
     */
    @Column(name = "user_type")
    private String userType;

    /**
     * 用户头像
     */
    private String photo;

    /**
     * 最后登陆IP
     */
    @Column(name = "login_ip")
    private String loginIp;

    /**
     * 最后登陆时间
     */
    @Column(name = "login_date")
    private Date loginDate;

    /**
     * 创建者
     */
    @Column(name = "create_by")
    private String createBy;

    /**
     * 更新者
     */
    @Column(name = "update_by")
    private String updateBy;

    /**
     * 备注信息
     */
    private String remarks;

    /**
     * 登录次数
     */
    @Column(name = "login_count")
    private Integer loginCount;


    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

}